package com.hrbxlh.util;

import java.util.Date;

/**
 *@author ：xzx
 *@description:生成随机的字符串，可以用于文件名字。
 *@date 2016年12月28日 下午3:15:21
 */
public class RandomValue {

	/**
	 * description:生成随机字符串，格式：letterLength个字母+时间戳毫秒数+randomLength位数字
	 * parameters:letterLength：英文字符个数，randomLength：随机数位数
	 * remark:参数均为3:100万次重复34次，参数均为4,100万次重复0次，建议参数均大于4，避免重复。
	 * @return String
	 * @throws Exception
	 */
	public String getRandomValue(int letterLength,int randomLength) throws Exception{
		
		StringBuffer resultStr = new StringBuffer();
		try{
			//生成英文
			for(int i = 0;i < letterLength;i++){
				String chars = "abcdefghijklmnopqrstuvwxyz";
				String oneValue = String.valueOf(chars.charAt((int)(Math.random() * 26)));
				resultStr.append(oneValue);
			}
			
			Date date = new Date();
			resultStr.append(String.valueOf(date.getTime()));
			
			java.util.Random r = new java.util.Random();  
			for(int i = 0;i < randomLength;i++){  
				/** 生成10以内的随机数，不含10，并转化为1位
				 */  
				resultStr.append(Integer.toString(r.nextInt(10),1));  
			}  
		}catch(Exception e){
			throw e;
		}
		return resultStr.toString();
	}	
}
